Cache Aware Data Laying for the Gauss-seidel Smoother

نویسنده

  • MALIK SILVA
چکیده

Feeding the processor with data operands is the bottleneck in many scientific computations. This bottleneck is alleviated by means of caches, small fast memories to keep data. The performance of a memory-intensive computation depends critically on whether most of the data accesses can be performed within the cache. Thus, cache aware computing is of importance. There are several well established strategies available to a programmer to make a program cache friendly. In this paper, we describe cache aware data laying, a technique which we feel has not been researched sufficiently. It is a promising technique as we achieved considerable performance improvements. For example, our data laying experiments with the Gauss-Seidel smoother resulted in up to 84% execution time improvements over the parallelogram based blocked implementation of the algorithm.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Preprocessing Costs of Cache Based Multigrid

Multigrid algorithms based on cache aware smoothers produce a high performance, portable, cache aware multigrid solver for problems with one or more degrees of freedom on unstructured grids. This paper analyzes the work cost of a necessary preprocessing step in cache aware multigrid. This mesh renumbering step is not present in standard multigrid codes. The cost is found to be small relative to...

متن کامل

SIMD Implementation of a Multiplicative Schwarz Smoother for a Multigrid Poisson Solver on an Intel Xeon Phi Coprocessor

In this paper, we discuss an efficient implementation of the three-dimensional multigrid Poisson solver on a many-core coprocessor, Intel Xeon Phi. We have used the modified block red-black (mBRB) Gauss-Seidel (GS) smoother to achieve sufficient degree of parallelism and high cache hit ratio. We have vectorized (SIMDized) the GS steps in the smoother by introducing a partially SIMDizing techniq...

متن کامل

ICCS 2001 talk: Rescheduling for Locality in Sparse Matrix Computations

Multigrid solves a set of simultaneous linear equations optimally. That is the time and space used by the multigrid computation are proportional to N , the number of unknowns. In reality the performance of any computation is not just dictated by how many operations performed. The order of the operations and the layout of data in memory determine how well levels of cache in the target architectu...

متن کامل

Using Sparse Tiling with Symmetric Multigrid

Good data locality is an important aspect of obtaining scalable performance for multigrid methods. However, locality can be difficult to achieve, especially when working with unstructured grids and sparse matrices whose structure is not known until runtime. Our previous work developed full sparse tiling, a runtime reordering and rescheduling technique for improving locality. We applied full spa...

متن کامل

Cache Based Multigrid on Unstructured Two Dimensional Grids

1. Abstract. High speed cache memory is commonly used to address the disparity between the speed of a computer's central processing unit and the speed of a computer's main memory. It is advantageous to maximize the amount of time that data spends in cache. Tiling is a software technique which is often used to do just this. Tiling is not able, however, to handle dynamically changing data structu...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2001